package com.scholarship.common.utils;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.env.Environment;
import org.springframework.web.multipart.MultipartFile;

import javax.xml.bind.util.JAXBSource;
import java.io.File;
import java.util.UUID;

/**
 * @Author Z.J.H
 * @create 2021/4/12 14:35
 */
public class FileUploadUtil {

    //文件上传临时路径
    public static final String PATH = PropertiesUtil.getProperty("upload.path");


//    public static String upload(MultipartFile file) throws Exception {
//
//        System.out.println("filePath >>>>>>>>> " + PATH);
//
//        //原始图片名称
//        String originalFileName = file.getOriginalFilename();
//        //新的图片名称
//        String newFileName = UUID.randomUUID() + originalFileName.substring(originalFileName.lastIndexOf("."));
//        //新图片
//        File newFile = new File(PATH + newFileName);
//        //将内存中的数据写入磁盘
//        file.transferTo(newFile);
//
//        return newFileName;
//    }

    /**
     * 上传文件并保留原始文件名
     * @param file
     * @return  文件路径加文件名
     * @throws Exception
     */
    public static String uploadNoChangeFileName(MultipartFile file) throws Exception {
        File uploadDir = new File(PATH);
        //如果文件夹不存在，则新建文件夹
        if(!uploadDir.exists()) {
            uploadDir.mkdir();
        }

        //原始文件名称
        String originalFileName = file.getOriginalFilename();
        //将写入的磁盘路径和文件名
        File newFile = new File(PATH + originalFileName);
        //将内存中的数据写入磁盘
        file.transferTo(newFile);

        return originalFileName;
    }
}
